'''
1）将字符串"askdsdfjas"中的所有字符a转变成A

2）打印26个英文字母，大写

3）从句子中提取所有长度大于3的单词
"The gentle breeze carried the sweet scent of blooming flowers through the quiet garden."


4）字典：dict1 = {1:"张三",2:"lisi",3:"lily",4:"lucy",5:"张三",6:"lily",7:"lisi"}
     根据上面字典的元素，生成要给新字典，要求：新字典的key为name  value为name出现的次数
    并且打印输出，格式为：
    名字张三有x个
    名字lisi有x个
    。。。

5）# 给一个列表[5,6,7,34,43,12,5,6,7,34]，打印每个数据有多少个
# 创建一个字典 key是列表中不重复的元素 value是对应的个数
# 5有2个

总结抄写：
元组，列表，字典的区别
字符串都有哪些常见方法
如何对字符串进行格式化


'''
def part1():
    print("\n")
    #1）将字符串"askdsdfjas"中的所有字符a转变成A
    str1='askdsdfjas'
    print(f'{str1.replace("a","A")}')


def part2():
    print('\n')
    #2）打印26个英文字母，大写
    num=65#ASCII=A
    for i in range(num,91):
        print(chr(i),end='')


def part3():
    #3）从句子中提取所有长度大于3的单词
    print('\n')
    str2='The gentle breeze carried the sweet scent of blooming flowers through the quiet garden.'
    list1=str2.split(" ")
    for item in list1:
        if len(item)>3:
            print(item)


def part4():
    print('\n')
    '''
    4）字典：dict1 = {1:"张三",2:"lisi",3:"lily",4:"lucy",5:"张三",6:"lily",7:"lisi"}
    根据上面字典的元素，生成要给新字典，要求：新字典的key为name  value为name出现的次数
    并且打印输出，格式为：
    名字张三有x个
    名字lisi有x个
    :return:
    '''
    dict1 = {1:"张三",2:"lisi",3:"lily",4:"lucy",5:"张三",6:"lily",7:"lisi"}
    dict2={}
    for name in dict1.values():#这里如果是values，则name为values，如果是item，则name为key：values
        if name in dict2:
            dict2[name]=dict2[name]+1
        else:
            dict2[name]=1
    for name , value in dict2.items():
        print(f'{name}名字有:{value}个',end='\n')


def part5():
    print('\n')
    '''5）# 给一个列表[5,6,7,34,43,12,5,6,7,34]，打印每个数据有多少个
    # 创建一个字典 key是列表中不重复的元素 value是对应的个数
    # 5有2个'''
    num=[5,6,7,34,43,12,5,6,7,34]
    dict1={}
    for item in num:
        if item in dict1:
            dict1[item]=dict1[item]+1
        else:
            dict1[item]=1
    for item,value in dict1.items():
        print(f'{item}有{value}个',end='\n')


if __name__ == '__main__':
    part1()
    part2()
    part3()
    part4()
    part5()